package Juego;


import java.util.Collection;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import Construibles.Construible;
import Excepciones.FueraDeLimites;
import MapaStuff.Mapa;
import Ubicacion.Punto;

public abstract class SerializadorPorUbicacionEnElMapa {

	public static void serializarPorUbicacionEnElMapa(Element ele,Document doc,Collection unCollection){
		for(Object elemento: unCollection){
			ele.appendChild(((Construible)elemento).hectarea().punto().serializar(doc));
		}
	}
	
	
	public static void hidratarPorUbicacionEnElMapa(Element ele,Agregador agregador){
		for(int i=0;i< ele.getChildNodes().getLength();i++){
			Punto punto=Punto.hidratar(ele.getChildNodes().item(i));
			try{
				agregador.agregar( Mapa.darMapa().darHectarea(punto).contenido());
			}catch(FueraDeLimites e){};
		}
	}
	

}
